Hi ida2009,
From what I can tell, this could be expected behavior. Please allow me to explain:
Your EMET settings will have no effect on this process (wfica32.exe, Citrix ICA Client Engine (Win32)) since all of your EMET mitigations are disabled.
However as you mention the status from within
Process Explorer is DEP (Permanent) with ASLR enabled. Process Explorer shows these designations since Process Explorer only queries the OS implementation of ASLR and DEP (see page 30 of the EMET 3.0 User Guide for this info).
DEP Permanent means that the process is opting into the OS (i.e. Windows) implementation of DEP and has been compiled with the
/NXCOMPAT linker option. Since it is also reporting ASLR within Process Explorer, it would appear that this process was also compiled with the
/DYNAMICBASE linker option.
ASLR and DEP (Permanent) are explained in the following blog posts:
http://blog.eeye.com/general/dep-down-part-1
http://securitywatch.pcmag.com/none/284144-what-s-your-dep-and-aslr-status
How we can tell if the is the case is by using Process Explorer for further investigation. Please enable the following option from within Process Explorer:
Options->Configure Colors->Relocated DLLs
Please tick/check the box to the left of this option as shown in the screenshot below:
Direct Link To Image:
http://i742.photobucket.com/albums/xx69/Jimboc/Microsoft/ProcessExplorerRelocateDLLsOption.png
If a DLL is not opting into ASLR, EMET will relocate that DLL (i.e. randomly place that DLL within memory) if ASLR:1 within EMET. If this is occurring, such re-locations will show as
Pink (by default) in Process Explorer version 15.3.
In addition, such DLLs will not show ASLR but will be blank in the ASLR column of the DLL lower pane of Process Explorer. This is shown in the screenshot below (you may need to zoom in on this screenshot to see this). The process FAHControl.exe
does not opt-into DEP or ASLR (however the Microsoft DLLs it uses do), the remainder are 3rd party DLLs which are then re-located by EMET using EMET's ASLR implementation that Process Explorer will not show in its ASLR column (instead it is shown by the colored
highlighting).
Direct Link To Image:
http://i742.photobucket.com/albums/xx69/Jimboc/Microsoft/ProcessExplorerRelocatedDLLs.png
Such re-location of DLLS is explained in the following EMET thread:
http://social.technet.microsoft.com/Forums/en-US/emet/thread/2208281f-ef4e-412d-ad7f-cd2f36404eb6
In the above screenshot, the .exe file of FAHControl.exe is not re-located by EMET (it is shown in white, not pink) since .exe files cannot be protected by EMET, only the DLLs within an .exe file can be protected. This is expected behavior and is by design.
This is mentioned by Didier Stevens in the following YouTube video (see position 03:40 within that video):
http://www.youtube.com/watch?v=zDZWgsJFEp4
If you do NOT see the colored highlighting within the wfica32.exe process using Process Explorer, you will know that EMET is
NOT affecting these DLLs. In addition Process Explorer will show ASLR for those DLLS if they are opting into ASLR (which is not controlled by EMET) due to being compiled with /DYNAMICBASE linker option. This would explain
why the DLLs are randomized even though EMET has Mandatory ASLR disabled. This is expected behaviour since if the DLLs are using ASLR, EMET will NOT apply Mandatory ASLR to those DLLs (this prevents the DLLs from being re-located twice).
If the DLLs are being re-located and do NOT show ASLR is Process Explorer this is NOT expected behaviour and is a bug within EMET (since you have Mandatory ASLR of EMET disabled and thus EMET should have no effect).
I hope that I have explained how you can tell if what you are experiencing is intended behavior or not. If you require additional clarification or further assistance, please let me know.
Thank you.